libxc: x86: ensure that the initial mapping fits into the guest's memory
authorIan Campbell <Ian.Campbell@citrix.com>
Fri, 11 Jan 2013 12:22:27 +0000 (12:22 +0000)
committerIan Campbell <Ian.Campbell@citrix.com>
Fri, 11 Jan 2013 12:22:27 +0000 (12:22 +0000)
commit5bb2be127bb4ee2fa6fa4545ad68f084d3bc09b0
tree85bbd2451aa2c5c30936b65841e3c096e56b417c
parent5420f26507fc5c9853eb1076401a8658d72669da
libxc: x86: ensure that the initial mapping fits into the guest's memory

In particular we need to check that adding 512KB of slack and
rounding up to a 4MB boundary do not overflow the guest's memory
allocation. Otherwise we run off the end of the p2m when building the
guest's initial page tables and populate them with garbage.

Wei noticed this when build tiny (2MB) mini-os domains.

Reported-by: Wei Liu <Wei.Liu2@citrix.com>
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
Committed-by: Ian Campbell <ian.campbell@citrix.com>
tools/libxc/xc_dom_core.c
tools/libxc/xc_dom_x86.c